/**
 ****************************************************************************************************
 * @file        main.c
 * @author      正点原子团队(ALIENTEK)
 * @version     V1.0
 * @date        2020-04-20
 * @brief       跑马灯 实验
 * @license     Copyright (c) 2020-2032, 广州市星翼电子科技有限公司
 ****************************************************************************************************
 * @attention
 *
 * 实验平台:正点原子 STM32F103开发板
 * 在线视频:www.yuanzige.com
 * 技术论坛:www.openedv.com
 * 公司网址:www.alientek.com
 * 购买地址:openedv.taobao.com
 *
 ****************************************************************************************************
 */

#include "./SYSTEM/sys/sys.h"
#include "demo.h"



/**
 * @brief       显示实验信息
 * @param       无
 * @retval      无
 */
void show_mesg(void)
{
    /* LCD显示实验信息 */
    lcd_show_string(10, 10, 220, 32, 32, "STM32", RED);
    lcd_show_string(10, 47, 220, 24, 24, "ATK-MS6050", RED);
    lcd_show_string(10, 76, 220, 16, 16, "ATOM@ALIENTEK", RED);
    lcd_show_string(10, 97, 220, 16, 16, "KEY0: upload mode", BLUE);
    
    /* 串口输出实验信息 */
    printf("\n");
    printf("********************************\r\n");
    printf("STM32\r\n");
    printf("ATK-MS6050\r\n");
    printf("ATOM@ALIENTEK\r\n");
    printf("KEY0: upload mode\r\n");
    printf("********************************\r\n");
    printf("\r\n");
}



int main(void)
{
    HAL_Init();                                 /* 初始化HAL库 */
    sys_stm32_clock_init(RCC_PLL_MUL9);         /* 设置时钟,72M */
    delay_init(72);                             /* 初始化延时函数 */
		usart_init(115200);                     		/* 串口初始化为115200 */
    led_init();                                 /* 初始化LED */
	  lcd_init();                                 /* 初始化LCD */
	
	
	
//		g_point_color = RED;
//		MPU6050_init();
//	
//		uint8_t	id;
//		int16_t ax,ay,az;
//		int16_t gx,gy,gz;
//		int16_t temp;
//		
//		MPU6050_read_byte(MPU6050_IIC_ADDR, MPU_DEVICE_ID_REG, &id);      /* 读取设备ID */
//		lcd_clear(WHITE);
	
			show_mesg();                        /* 显示实验信息 */
			demo_run();                         /* 运行示例程序 */
	
    while(1)
    {
			
			
//				MPU6050_get_accelerometer(&ax,&ay,&az);
//				MPU6050_get_gyroscope(&gx,&gy,&gz);
//				MPU6050_get_temperature(&temp);
//				
//        lcd_show_string(10, 40, 240, 32, 32, "STM32", RED);
//        lcd_show_string(10, 80, 240, 24, 24, "TFTLCD TEST", RED);
//        lcd_show_string(10, 110, 240, 16, 16, "ATOM@ALIENTEK", RED);
//        char id_str[16];
//        sprintf(id_str, "ID:0x%02X", id);
//        lcd_show_string(10, 130, 240, 16, 16, id_str, RED);
//				char MPU6050[54];
//				sprintf(MPU6050, "ax:%5d;ay:%5d;az:%5d", ax,ay,az);
//				lcd_show_string(10, 150, 240, 16, 16, MPU6050, RED);
//				char MPU6050_G[54];
//				sprintf(MPU6050_G, "gx:%5d;gy:%5d;gz:%5d", gx,gy,gz);
//				lcd_show_string(10, 170, 240, 16, 16, MPU6050_G, RED);
//			
//				char temp_str[16];
//				sprintf(temp_str, "temp:%.02f",(float)temp/100);
//				lcd_show_string(10, 190, 240, 16, 16, temp_str, RED);
//        LED0_TOGGLE(); /*红灯闪烁*/


    }
}
